import request from '@/utils/request'

/**
 * 用户登录
 * @param {Object} data 登录数据
 * @returns {Promise}
 */
export function login(data) {
  return request({
    url: '/auth/login',
    method: 'post',
    data
  })
}

/**
 * 用户登出
 * @returns {Promise}
 */
export function logout() {
  return request({
    url: '/auth/logout',
    method: 'post'
  })
}

/**
 * 获取用户信息
 * @returns {Promise}
 */
export function getUserInfo() {
  return request({
    url: '/auth/userinfo',
    method: 'get'
  })
}

/**
 * 更新用户信息
 * @param {Object} data 用户数据
 * @returns {Promise}
 */
export function updateUserInfo(data) {
  return request({
    url: '/auth/profile',
    method: 'put',
    data
  })
}

/**
 * 修改密码
 * @param {Object} data 密码数据
 * @returns {Promise}
 */
export function changePassword(data) {
  return request({
    url: '/auth/change-password',
    method: 'post',
    data
  })
}

/**
 * 获取用户菜单
 * @returns {Promise}
 */
export function getUserMenus() {
  return request({
    url: '/auth/menus',
    method: 'get'
  })
}

/**
 * 获取用户权限
 * @returns {Promise}
 */
export function getUserPermissions() {
  return request({
    url: '/auth/permissions',
    method: 'get'
  })
}
